package ycl.message.service;

import ycl.common.result.Result;
import ycl.common.models.base.A;
import ycl.common.models.req.SmsReq;
import ycl.common.models.req.base.SendEmailReq;

/**
 * 消息逻辑层接口
 *
 * @author ycl
 * @date 2022/6/16 0016 11:30:54
 */
public interface MessageService {

	/**
	 * 发送邮件
	 *
	 * @param req 邮件参数
	 */
	Result<A> sendEmail(SendEmailReq req);

	/**
	 * 定时器执行: 删除日发送次数
	 */
	void deleteSendCount();

	/**
	 * 绑定手机发送验证码
	 *
	 * @param req 请求数据
	 * @return 结果
	 */
	Result<A> sendAuthCodeBindMobile(SmsReq req);
}
